<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <script>

        /* 
            pending : 初始状态-等待状态-等待promise的状态切换 。
            fulfilled|resolved : 成功的操作，对应Promise 的reslove 回调,第一个回调，只有当promise的执行函数调用了resolve函数，才会将状态切换为fulfilled
            将后续的回调方法指向于then中第一个回调函数
            rejected : 失败的操作，对应Promise 的rejected 回调,第二个回调，有当promise的执行函数调用了reject函数，才会将状态切换为rejected
            将后续的回调方法指向于then中第二个回调函数
            */
        let p=new Promise(function(resolve,reject){
            resolve("我是参数呀");
            // reject("haha,参数");
        });

        //then中没有return自己创建的promise对象，p2的状态取决于js代码运行是否正常
        let p2=p.then(function(data){
            //  sddsd
            console.log(data);
        },function(){
            撒娇旯啥时间就暗示
            console.log(22);
        });
        
        //then中如果有return 自己创建的promise对象，p3的状态取决于promise中调用的是哪个函数
        let p3=p2.then(function(){
            console.log(2222);
            let pro=new Promise(function(resolve,reject){
                reject();
            });
            return pro;
        },function(){
            console.log(3333)
            let pro=new Promise(function(resolve,reject){
                resolve();
            });
            return pro;
        });
        p3.then(function(){
            console.log("aaa");
        },function(){
            console.log("bbb");
        });


        // console.log(p3);
    </script>
</head>
<body>
    
</body>
</html>